package 接口.upperCastExample;

/**
 * 私有内部类，的好处还是很明显的。
 * Parcel4Sub 继承了，但是没有实现。
 */
public class Parcel4 {
	/**
	 * 内部类 扩展了接口 Contents ，但是对于外界来说，并不需要一定要实现
	 */
	private class PContents implements Contents {
		private int i = 11;

		@Override
		public int value() {
			return i;
		}
	}

	protected class PDestination implements Destination {

		private String label;

		public PDestination(String whereTo) {
			label = whereTo;
		}

		@Override
		public String readLabel() {
			return label;
		}
	}

	/**
	 * @param s
	 * @return
	 */
	public Destination destination(String s) {
		return new PDestination(s);
	}

	public Contents contents() {
		return new PContents();
	}
}
